<?xml version="1.0" encoding="UTF-8"?>
<AUTOSAR xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-0-3.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://autosar.org/schema/r4.0">
	<AR-PACKAGES>
		<AR-PACKAGE UUID="9c5cf824-7831-4a06-877a-49e2b3d79a3b">
			<SHORT-NAME>MICROSAR</SHORT-NAME>
			<ELEMENTS>
				<ECUC-MODULE-DEF UUID="25a5aff5-840f-43b5-9032-f4ec7803e01a">
					<SHORT-NAME>NvM</SHORT-NAME>
					<DESC>
						<L-2 L="EN">Configuration of the NvM (NvRam Manager) module.</L-2>
					</DESC>
					<CATEGORY>VENDOR_SPECIFIC_MODULE_DEFINITION</CATEGORY>
					<ADMIN-DATA>
						<DOC-REVISIONS>
							<DOC-REVISION>
								<REVISION-LABEL>5.0.0</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>AUTOSAR</ISSUED-BY>
								<DATE>2012-06-01</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Update to AUTOSAR 4.0.3</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00058816</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.0.1</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2012-09-07T10:36:59+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Udpdate, no changes</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">configuration management topics</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.0.2</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2012-10-12T05:37:34+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Update, Format of Version Identifications, Generator Info</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00062157</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.1.0</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2012-12-14T09:43:27+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Interaction with BswM</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00062284</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Explicit Synchronization Mechanism: NvMBlockUseSyncMechanism is used now</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00063347</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Default of  NvMDrvModeSwitch</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00063728</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.02.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virdu</ISSUED-BY>
								<DATE>2013-07-08T11:19:26+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">NvMComonData deleted</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00068609</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Description of parameters/containers added</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00067520, ESCAN00067602</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Default of Development Error Detection set to true</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00067566</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Changed Dem include file and function name to published information</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00068055</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Set multiplicity of unused parameters to 0</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00068173</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Improve BSWMD Description Text</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00070337</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Add Units / preferred display formats to numeric parameter values</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00070425</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.02.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2013-11-04T02:11:44+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Udpdate</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">CRC8 deleted form Parameter NvMBlockCrcType</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00070406</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.02.02</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2014-04-10T03:22:34+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">no changes</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">Config Management</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.02.03</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2014-04-10T03:27:17+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Internal data added</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">Tooling (were automatically added)</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.03.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2014-04-25T04:06:33+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Added parameter NvMMainFunctionPeriod; extended description of NvMCrcNumOfBytes</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00074354</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Added pre-configured values vor ConfigIdBlock</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00063733</L-2>
										</REASON>
									</MODIFICATION>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Fixed Typos in textual descriptions</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00071685</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.03.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>virck</ISSUED-BY>
								<DATE>2014-10-07T01:38:53+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.03.02</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2014-12-05T01:12:15+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.03.03</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2015-01-13T03:04:35+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Revision Update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.04.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2015-02-24T11:24:18+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Added new Parameter "NvMUseBlockIdCheck", Changed UseServicePorts default value to false, Revision Update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00080059, FEAT-1325; ESCAN00082882, changes in implemenation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.04.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2015-08-19T08:27:51+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">Improved single block status handling during multi block request</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00084457</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.05.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2015-09-11T10:54:21+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">removed DET error parameter, moved Block Length Check from NvMDevErrorChecks to NvMBlockDescriptor, added new parameter Automatic Block Length within NvMBlockDescriptor</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00085159, ESCAN00085140, ESCAN00085091</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.06.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2016-02-11T01:01:49+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">removed non-AUTOSAR container NvMDevErrorChecks and parameter NvMCfgIncludeDem and NvMSeterror</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00088233</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.07.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2016-05-09T12:45:18+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">adjusted multiplicities to AUTOSAR</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">ESCAN00063341</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.07.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2016-10-18T03:04:58+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">revision update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.08.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2016-12-16T09:09:20+01:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">added parameter NvMSafeBswChecks</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">FEAT-1824</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.08.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2017-06-20T01:03:32+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">revision update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.09.00</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2017-07-10T02:57:23+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">added parameter NvMBlockUseCRCCompMechanism and NvMBlockUseSetRamBlockStatus</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">FEAT-2914, FEAT-2967</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
							<DOC-REVISION>
								<REVISION-LABEL>5.09.01</REVISION-LABEL>
								<STATE>released</STATE>
								<ISSUED-BY>viroto</ISSUED-BY>
								<DATE>2018-05-15T04:10:50+02:00</DATE>
								<MODIFICATIONS>
									<MODIFICATION>
										<CHANGE>
											<L-2 L="EN">revision update</L-2>
										</CHANGE>
										<REASON>
											<L-2 L="EN">changes in implementation</L-2>
										</REASON>
									</MODIFICATION>
								</MODIFICATIONS>
							</DOC-REVISION>
						</DOC-REVISIONS>
					</ADMIN-DATA>
					<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
					<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
					<REFINED-MODULE-DEF-REF DEST="ECUC-MODULE-DEF">/AUTOSAR/EcucDefs/NvM</REFINED-MODULE-DEF-REF>
					<SUPPORTED-CONFIG-VARIANTS>
						<SUPPORTED-CONFIG-VARIANT>VARIANT-PRE-COMPILE</SUPPORTED-CONFIG-VARIANT>
					</SUPPORTED-CONFIG-VARIANTS>
					<CONTAINERS>
						<!-- Container Definition: NvMBlockDescriptor -->
						<ECUC-PARAM-CONF-CONTAINER-DEF UUID="fdfd1556-ea5a-4628-8f31-c3514c75ebe5">
							<SHORT-NAME>NvMBlockDescriptor</SHORT-NAME>
							<DESC>
								<L-2 L="EN">This container includes the configuration of one NVM block. At least one block is required to be configured. The NVRAM block descriptors are condensed in the NVRAM block descriptor table.</L-2>
							</DESC>
							<ADMIN-DATA>
								<SDGS>
									<SDG GID="DV:CfgPostBuild">
										<SD GID="DV:postBuildSelectableChangeable">false</SD>
										<SD GID="DV:postBuildNotDeletable">false</SD>
									</SDG>
								</SDGS>
							</ADMIN-DATA>
							<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
							<UPPER-MULTIPLICITY>65536</UPPER-MULTIPLICITY>
							<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
							<MULTIPLE-CONFIGURATION-CONTAINER>false</MULTIPLE-CONFIGURATION-CONTAINER>
							<PARAMETERS>
								<!-- PARAMETER DEFINITION: NvMBlockCrcType -->
								<ECUC-ENUMERATION-PARAM-DEF UUID="7a7238c1-f42b-418b-b037-8cac7487ae70">
									<SHORT-NAME>NvMBlockCrcType</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Crc Type</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines CRC data width for the NVRAM block. Hint: The parameter is only applicable if (NvMBlockUseCrc == true).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>NVM_CRC16</DEFAULT-VALUE>
									<LITERALS>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="f0ddc67d-a48a-4297-be6f-6226be39ed7c">
											<SHORT-NAME>NVM_CRC16</SHORT-NAME>
										</ECUC-ENUMERATION-LITERAL-DEF>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="2d3f3e27-862e-4533-8a31-4748a8050193">
											<SHORT-NAME>NVM_CRC32</SHORT-NAME>
										</ECUC-ENUMERATION-LITERAL-DEF>
									</LITERALS>
								</ECUC-ENUMERATION-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBlockJobPriority -->
								<ECUC-INTEGER-PARAM-DEF UUID="5da9ff12-4169-4506-8a05-34715a95cc22">
									<SHORT-NAME>NvMBlockJobPriority</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Priority</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the job priority for a NVRAM block (0 = Immediate priority).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>127</DEFAULT-VALUE>
									<MAX>255</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBlockManagementType -->
								<ECUC-ENUMERATION-PARAM-DEF UUID="2b2695b5-c74e-481d-9d7a-950258ee1a69">
									<SHORT-NAME>NvMBlockManagementType</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Management Type</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Defines the block management type for the NVRAM block.
NVM_BLOCK_DATASET: NVRAM  block  is configured to be of dataset type. The application has to decide which of the n data set is handled.
NVM_BLOCK_NATIVE: NVRAM block is configured to be of native type. The data is stored at one position.
NVM_BLOCK_REDUNDANT : NVRAM block is configured to be of redundant type. The data is stored twice. If reading the first element fails, the modules automatically tries to read the second element.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>NVM_BLOCK_NATIVE</DEFAULT-VALUE>
									<LITERALS>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="b20284f8-dc34-4d8f-b114-d8c8909254bd">
											<SHORT-NAME>NVM_BLOCK_DATASET</SHORT-NAME>
										</ECUC-ENUMERATION-LITERAL-DEF>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="78ec3242-97ef-478e-9833-9bcde46f1c47">
											<SHORT-NAME>NVM_BLOCK_NATIVE</SHORT-NAME>
										</ECUC-ENUMERATION-LITERAL-DEF>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="441ab676-3445-42fb-b818-4ca66756b7a8">
											<SHORT-NAME>NVM_BLOCK_REDUNDANT</SHORT-NAME>
										</ECUC-ENUMERATION-LITERAL-DEF>
									</LITERALS>
								</ECUC-ENUMERATION-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBlockUseCrc -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="c6663c91-2f61-4573-9d99-efd13763616c">
									<SHORT-NAME>NvMBlockUseCrc</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Crc usage</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if CRC usage for the NVRAM block is enabled.
Hint: The type of CRC has to be configured in NvMBlockCrcType.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:     	CRC will be used for this NVRAM block.
                                        false:     	CRC will not be used for this NVRAM block.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBlockUseSyncMechanism -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="978730f8-ab2f-4c77-a015-fbf216575a11">
									<SHORT-NAME>NvMBlockUseSyncMechanism</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Use Synchronization Mechanism</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether an explicit synchronization mechanism with a RAM mirror and callback routines for transferring data to and from NvM module's RAM mirror is used for this block.
If used, both, NvMReadRamBlockFromNvCallback and NvMWriteRamBlockToNvCallback must be set to names of appropriate functions.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBlockWriteProt -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="79fbddff-0976-4ea6-9a8b-b3161fec96b0">
									<SHORT-NAME>NvMBlockWriteProt</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Write Protection</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the initial write protection of the NV block.
true:	Initial block write protection is enabled.
false:	Initial block write protection is disabled.
</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Initial block write protection is enabled.
                                        false:	Initial block write protection is disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBswMBlockStatusInformation -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="c64b06c1-f138-44c4-a981-7813d4787ec6">
									<SHORT-NAME>NvMBswMBlockStatusInformation</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Status Information</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether BswM is informed about the current status of this block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">True: Call BswM_NvM_CurrentBlockMode on changes
                                        False: Don&amp;rsquo;t inform BswM at all</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMCalcRamBlockCrc -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="f70e4844-5b7a-4a76-9772-cabbbd81f175">
									<SHORT-NAME>NvMCalcRamBlockCrc</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Calculate Ram Block Crc</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines CRC (re)calculation for the permanent RAM block.
true:	CRC will be (re)calculated for this permanent RAM block.
false: 	CRC will not be (re)calculated for this permanent RAM block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	CRC will be (re)calculated for this permanent RAM block.
                                        false: 	CRC will not be (re)calculated for this permanent RAM block.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMInitBlockCallback -->
								<ECUC-FUNCTION-NAME-DEF UUID="7d6ed63f-44f1-4cf8-9f78-bc16a40611b5">
									<SHORT-NAME>NvMInitBlockCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Init Block Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the block specific callback routine which shall be called if no ROM data is available for initialization of the NVRAM block.
If a NULL pointer is configured, no specific callback routine shall be called for initialization of the NVRAM block with default data.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">If not configured, no specific callback routine shall be called for initialization of the NVRAM block with default data.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-FUNCTION-NAME-DEF-VARIANTS>
										<ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
									</ECUC-FUNCTION-NAME-DEF-VARIANTS>
								</ECUC-FUNCTION-NAME-DEF>
								<!-- PARAMETER DEFINITION: NvMMaxNumOfReadRetries -->
								<ECUC-INTEGER-PARAM-DEF UUID="ffaab590-83f0-46d2-bb37-69629600e859">
									<SHORT-NAME>NvMMaxNumOfReadRetries</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Maximum number of read retries</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This parameter defines the maximum number of read retries.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>0</DEFAULT-VALUE>
									<MAX>7</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMMaxNumOfWriteRetries -->
								<ECUC-INTEGER-PARAM-DEF UUID="ec0d9c8a-4aef-4674-8b8b-b86cd263bce2">
									<SHORT-NAME>NvMMaxNumOfWriteRetries</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Maximum number of write retries</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This parameter defines the maximum number of write retries for a NVRAM block</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>0</DEFAULT-VALUE>
									<MAX>7</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMNvBlockBaseNumber -->
								<ECUC-INTEGER-PARAM-DEF UUID="52917836-8cc9-4ef1-b576-6b03f8190291">
									<SHORT-NAME>NvMNvBlockBaseNumber</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Base Number</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not Used!
This value specifies the link between the NVM_NVRAM_BLOCK_IDENTIFIER used by the SW-Cs and the FEE_BLOCK_NUMBER expected by the memory abstraction modules. The parameter value equals the FEE_BLOCK_NUMBER or EA_BLOCK_NUMBER shifted to the right by NvMDatasetSelectionBits bits.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Calculation Formula:
                                        value = TargetBlockReference.[Ea/Fee]BlockConfiguration.[Ea/Fee]BlockNumber &gt;&gt; NvMDatasetSelectionBits</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<MAX>65534</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMNvBlockLength -->
								<ECUC-INTEGER-PARAM-DEF UUID="2c6b11ff-2bb0-4ad9-8a2e-7155020e8fd1">
									<SHORT-NAME>NvMNvBlockLength</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Length</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the NV block data length.
Hint: If a NvMRamBlockDataAddress or NvMRomBlockDataAddress is given for this block, the length given here has to match exactly the variable sizes.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Note: 
                                        The implementer can add the attribute 'withAuto' to the parameter definition which indicates that the length can be calculated by the generator automatically (e.g. by using the sizeof operator). 
                                        When 'withAuto' is set to 'true' for this parameter definition the 'isAutoValue' can be set to 'true'. 
                                        If 'isAutoValue' is set to 'true' the actual value will not be considered during ECU Configuration but will be (re-)calculated by the code generator and stored in the value attribute afterwards.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>65535</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMNvBlockNum -->
								<ECUC-INTEGER-PARAM-DEF UUID="56670dfa-4daa-437e-a3f2-2cb6a7f0e5e2">
									<SHORT-NAME>NvMNvBlockNum</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Datasets</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the number of multiple NV blocks in a contiguous area according to the given block management type.
1-255	For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to NVM148.

1	For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE

2	For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">1-255	For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to NVM444.

                                        1	For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE

                                        2	For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>255</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMNvramBlockIdentifier -->
								<ECUC-INTEGER-PARAM-DEF UUID="63655448-4529-448b-92d7-8863122371d7">
									<SHORT-NAME>NvMNvramBlockIdentifier</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Identifier</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the identification of a NVRAM block via a unique block identifier.
Implementation Type: NvM_BlockIdType.

                                min = 0
                                max = 2^(16- NVM_DATASET_SELECTION_BITS)-1

Reserved NVRAM block IDs:
0 -&gt; to derive multi block request results via NvM_GetErrorStatus
1 -&gt; redundant NVRAM block which holds the configuration ID</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Implementation Type: NvM_BlockIdType.

                                        min = 2
                                        max = 2^(16- NVM_DATASET_SELECTION_BITS)-1

                                        Reserved NVRAM block IDs:
                                        0 -&gt; to derive multi block request results via NvM_GetErrorStatus
                                        1 -&gt; redundant NVRAM block which holds the configuration ID</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>true</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>2</DEFAULT-VALUE>
									<MAX>65535</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMNvramDeviceId -->
								<ECUC-INTEGER-PARAM-DEF UUID="5dc43dab-1337-4af2-a0b3-ef18a6898886">
									<SHORT-NAME>NvMNvramDeviceId</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Device Id</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!
This value specifies the NVRAM device ID where the NVRAM block is located.
Calculation Formula:
"value = TargetBlockReference.[Ea/Fee]BlockConfiguration.[Ea/Fee]DeviceIndex"</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Calculation Formula:
                                        value = TargetBlockReference.[Ea/Fee]BlockConfiguration.[Ea/Fee]DeviceIndex</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<MAX>254</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMRamBlockDataAddress -->
								<ECUC-STRING-PARAM-DEF UUID="54dbd639-847a-482f-b81e-88657a29941d">
									<SHORT-NAME>NvMRamBlockDataAddress</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Ram Block Data</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the variable name of the RAM block data.
If a NULL pointer is configured, no permanent RAM data block is available for this block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">If this is not configured, no permanent RAM data block is available for the selected block management type.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-STRING-PARAM-DEF-VARIANTS>
										<ECUC-STRING-PARAM-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-STRING-PARAM-DEF-CONDITIONAL>
									</ECUC-STRING-PARAM-DEF-VARIANTS>
								</ECUC-STRING-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMReadRamBlockFromNvCallback -->
								<ECUC-FUNCTION-NAME-DEF UUID="8fc84300-0c1c-41f4-8222-a4da7b5a023f">
									<SHORT-NAME>NvMReadRamBlockFromNvCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Read Ram Block From Nv Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the block specific callback routine which shall be called in order to let the application copy data from the NvM module's mirror to RAM block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Implementation type: Std_ReturnType

                                        E_OK: copy was successful
                                        E_NOT_OK: copy was not successful, callback routine to be called again</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-FUNCTION-NAME-DEF-VARIANTS>
										<ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
									</ECUC-FUNCTION-NAME-DEF-VARIANTS>
								</ECUC-FUNCTION-NAME-DEF>
								<!-- PARAMETER DEFINITION: NvMResistantToChangedSw -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="bf5c3f7b-c7d7-457e-8ddb-26279590f0b0">
									<SHORT-NAME>NvMResistantToChangedSw</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Resistant To Changed Software</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether a NVRAM block shall be treated resistant to configuration changes or not. If there is no default data available at configuration time then the application shall be responsible for providing the default initialization data. In this case the application has to use NvM_GetErrorStatus() to be able to distinguish between first initialization and corrupted data.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true: 	NVRAM block is resistant to changed software.
                                        false: 	NVRAM block is not resistant to changed software.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMRomBlockDataAddress -->
								<ECUC-STRING-PARAM-DEF UUID="f45d5546-c951-4ace-b34d-ec2910ec4fc3">
									<SHORT-NAME>NvMRomBlockDataAddress</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Rom Block Data</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the variable name of the ROM block data.

If a NULL pointer is configured, no ROM block is available for this block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">If not configured, no ROM block is available for the selected block management type.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-STRING-PARAM-DEF-VARIANTS>
										<ECUC-STRING-PARAM-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-STRING-PARAM-DEF-CONDITIONAL>
									</ECUC-STRING-PARAM-DEF-VARIANTS>
								</ECUC-STRING-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMRomBlockNum -->
								<ECUC-INTEGER-PARAM-DEF UUID="dd98c1ca-614d-4fa8-9abb-2919c9a43491">
									<SHORT-NAME>NvMRomBlockNum</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Rom Block Number</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not Used!
This value specifies the number of multiple ROM blocks in a contiguous area according to the given block management type.

0-255	For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to NVM148.

0-1	For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE

0-1	For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">0-255	For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to NVM444.

                                        0-1	For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE

                                        0-1	For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>0</DEFAULT-VALUE>
									<MAX>255</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSelectBlockForReadAll -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="8c5c0190-5594-4b46-981d-0ee1fa4f7ab3">
									<SHORT-NAME>NvMSelectBlockForReadAll</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Select Block For ReadAll</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether the NVRAM block shall be processed during NvM_ReadAll or not. This configuration parameter has only influence on those NVRAM blocks which are configured to have a permanent RAM block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	NVRAM block shall be processed by NvM_ReadAll
                                        false:	NVRAM block shall not be processed by NvM_ReadAll</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSelectBlockForWriteAll -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="4c47d716-a258-4f8a-a29e-6e8e2455a94c">
									<SHORT-NAME>NvMSelectBlockForWriteAll</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Select Block For WriteAll</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether the NVRAM block shall be processed during NvM_WriteAll or not. This configuration parameter has only influence on those NVRAM blocks which are configured to have a permanent RAM block.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true: NVRAM block shall be processed by NvM_WriteAll
                                        false: NVRAM block shall not be processed by NvM_WriteAll</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSingleBlockCallback -->
								<ECUC-FUNCTION-NAME-DEF UUID="a908584e-e69a-4917-9200-fba2bc58e9d3">
									<SHORT-NAME>NvMSingleBlockCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Single Block Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the block specific callback routine which shall be invoked on termination of each asynchronous single block request.
Does not care, if "Use Job End Callback" was disabled, or if  "Use Service Ports" was enabled (then the name is derived automatically).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-FUNCTION-NAME-DEF-VARIANTS>
										<ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
									</ECUC-FUNCTION-NAME-DEF-VARIANTS>
								</ECUC-FUNCTION-NAME-DEF>
								<!-- PARAMETER DEFINITION: NvMStaticBlockIDCheck -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="b5b7748b-0e40-4065-b551-afb210828381">
									<SHORT-NAME>NvMStaticBlockIDCheck</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Static Block Id Check</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This parameter defines if the Static Block ID check is enabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">false: Static Block ID check is disabled.
                                        true: Static Block ID check is enabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMWriteBlockOnce -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="b11318f9-1785-45af-9a85-8a768fed0c19">
									<SHORT-NAME>NvMWriteBlockOnce</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Write Block Once</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if write protection after first write is enabled. The NVRAM manager sets the write protection bit after the NV block was written the first time. This means that some of the NV blocks in the NVRAM should never be erased nor be replaced with the default ROM data after first initialization.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true: 	Defines write protection after first write is enabled.
                                        false: 	Defines write protection after first write is disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMWriteRamBlockToNvCallback -->
								<ECUC-FUNCTION-NAME-DEF UUID="b5db3dec-7629-47b9-88e8-6f9fff00f918">
									<SHORT-NAME>NvMWriteRamBlockToNvCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Write Ram Block To Nv Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the block specific callback routine which shall be called in order to let the application copy data from RAM block to NvM module's mirror.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">Implementation type: Std_ReturnType

                                        E_OK: copy was successful
                                        E_NOT_OK: copy was not successful, callback routine to be called again</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-FUNCTION-NAME-DEF-VARIANTS>
										<ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
									</ECUC-FUNCTION-NAME-DEF-VARIANTS>
								</ECUC-FUNCTION-NAME-DEF>
								<!-- PARAMETER DEFINITION: NvMWriteVerification -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="a2e6ff91-1acf-4a4e-a1df-ac6cfd5da707">
									<SHORT-NAME>NvMWriteVerification</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Write Verification</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This parameter defines if Write Verification is enabled.
</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">false: Write verification is disabled.
                                        true: Write Verification is enabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMWriteVerificationDataSize -->
								<ECUC-INTEGER-PARAM-DEF UUID="298ed555-5dc4-4b70-be80-0a5907e361c8">
									<SHORT-NAME>NvMWriteVerificationDataSize</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Write Verification Data Size</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This value specifies the number of bytes to compare in each step when comparing the content of a RAM Block and a block read back.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>65536</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="c975187b-580e-4733-875c-5f60c5f4928a">
									<SHORT-NAME>NvMUseServicePorts</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Use Service Ports</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if this block is accessible via service ports. The PortName will be derived from the block name.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="e56d7f43-3056-4bde-bc6c-69b8a81e05c1">
									<SHORT-NAME>NvMUseJobendCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Use Job End Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether the block specific "Single Block Job End Notification" shall be invoked upon completion of block processing.
If enabled, the name of the function must be specified in "Single Block Callback", unless "Use Service Ports" was enabled (then the name is derived automatically).


</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="c2f8d7b2-2541-49a0-9902-626f9bd5e53d">
									<SHORT-NAME>NvMUseInitCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Use Init Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if the configured Init Callback is used to provide default data.
Note: Since the initialization status of the RTE during ReadAll processing is currently unclear (according to AUTOSAR it is not initialized), the init callback cannot be used by SW-Cs via RTE - the setting will be ignored.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="8fcbc5b2-513d-470b-b317-146c1bc37b6a">
									<SHORT-NAME>NvMAutomaticBlockLength</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Automatic Block Length</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">If enabled, the actual block length will be set via sizeof(configured permanent RAM). The configurated block length marks the maximal block length, which must not be exceeded by sizeof(configured permanent RAM) - to check the configuration it is recomended to enabled block length check.

Only available for blocks with permanent RAM.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="358c2c05-0680-4f6f-ba42-514904d9be46">
									<SHORT-NAME>NvMBlockLengthCheck</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Length Check</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Enable or disable the block length checks. Block lengths are checked during compile time, invalid lengths shall lead to compiler errors.

Only available for blocks with permanent RAM or permanent ROM.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="eee5657b-f882-4c4a-b761-13c434ae6f85">
									<SHORT-NAME>NvMBlockLengthCheckType</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Block Length Check Strict</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Decide whether the block length check shall be strict or non-strict
strict: configured length has to exactly match the corresponding RAM or ROM length
non strict: configured block length has to be lower than or equal to the corresponding RAM or ROM length

Available only if block length check is enabled and automatic block length disabled (automatic block length has its own length check type).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="39731b55-bf0d-4b77-9e19-f00f543027d4">
									<SHORT-NAME>NvMBlockUseCRCCompMechanism</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Defines whether the CRC of the RAM Block shall be compared during a write job with the CRC which was calculated during the last successful read or write job.
CRC does not match: NvM will write data
CRC matches: NvM won't write the data, but behave as if done so
</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true: if compare mechanism is used,
                                        false: otherwise</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="2b57a337-1fae-40ac-933f-23629736a189">
									<SHORT-NAME>NvMBlockUseSetRamBlockStatus</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Not supported by NvM, parameter only used to validate NvBlockNeeds ramBlockStatusControl configuration.

Defines if NvMSetRamBlockStatusApi shall be used for this block or not.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
							</PARAMETERS>
							<SUB-CONTAINERS>
								<!-- Container Definition: NvMTargetBlockReference -->
								<ECUC-CHOICE-CONTAINER-DEF UUID="1982f635-b98c-4a05-8b77-f949bdd41853">
									<SHORT-NAME>NvMTargetBlockReference</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Target Block Reference</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This container either includes configuration of a reference to an EA or FEE block.</L-2>
									</DESC>
									<ADMIN-DATA>
										<SDGS>
											<SDG GID="DV:CfgPostBuild">
												<SD GID="DV:postBuildSelectableChangeable">false</SD>
												<SD GID="DV:postBuildNotDeletable">false</SD>
											</SDG>
										</SDGS>
									</ADMIN-DATA>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
									<CHOICES>
										<!-- Container Definition: NvMEaRef -->
										<ECUC-PARAM-CONF-CONTAINER-DEF UUID="c643656d-9fba-4698-9b9d-e6fc38a3d68f">
											<SHORT-NAME>NvMEaRef</SHORT-NAME>
											<LONG-NAME>
												<L-4 L="EN">Ea Reference</L-4>
											</LONG-NAME>
											<DESC>
												<L-2 L="EN">This container includes the reference to an EEPROM Abstraction block.</L-2>
											</DESC>
											<ADMIN-DATA>
												<SDGS>
													<SDG GID="DV:CfgPostBuild">
														<SD GID="DV:postBuildSelectableChangeable">false</SD>
														<SD GID="DV:postBuildNotDeletable">false</SD>
													</SDG>
												</SDGS>
											</ADMIN-DATA>
											<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
											<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
											<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
											<MULTIPLE-CONFIGURATION-CONTAINER>false</MULTIPLE-CONFIGURATION-CONTAINER>
											<REFERENCES>
												<!-- Symbolic Name Reference Definition: NvMNameOfEaBlock -->
												<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="db2af0f0-4b12-464e-9882-fabc12f0472e">
													<SHORT-NAME>NvMNameOfEaBlock</SHORT-NAME>
													<LONG-NAME>
														<L-4 L="EN">Name of Ea Block</L-4>
													</LONG-NAME>
													<DESC>
														<L-2 L="EN">Reference to one block in the EA configuration.</L-2>
													</DESC>
													<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
													<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
													<IMPLEMENTATION-CONFIG-CLASSES>
														<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
															<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
															<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
														</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
													</IMPLEMENTATION-CONFIG-CLASSES>
													<ORIGIN>AUTOSAR_ECUC</ORIGIN>
													<REQUIRES-INDEX>false</REQUIRES-INDEX>
													<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Ea/EaBlockConfiguration</DESTINATION-REF>
												</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
											</REFERENCES>
										</ECUC-PARAM-CONF-CONTAINER-DEF>
										<!-- Container Definition: NvMFeeRef -->
										<ECUC-PARAM-CONF-CONTAINER-DEF UUID="59de051c-ece6-4e8e-9bb8-e9c671880d9f">
											<SHORT-NAME>NvMFeeRef</SHORT-NAME>
											<LONG-NAME>
												<L-4 L="EN">Fee Reference</L-4>
											</LONG-NAME>
											<DESC>
												<L-2 L="EN">This container includes the reference to a FEE block.</L-2>
											</DESC>
											<ADMIN-DATA>
												<SDGS>
													<SDG GID="DV:CfgPostBuild">
														<SD GID="DV:postBuildSelectableChangeable">false</SD>
														<SD GID="DV:postBuildNotDeletable">false</SD>
													</SDG>
												</SDGS>
											</ADMIN-DATA>
											<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
											<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
											<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
											<MULTIPLE-CONFIGURATION-CONTAINER>false</MULTIPLE-CONFIGURATION-CONTAINER>
											<REFERENCES>
												<!-- Symbolic Name Reference Definition: NvMNameOfFeeBlock -->
												<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="ce1f777f-e031-4bb5-b6f2-b75f0df878c1">
													<SHORT-NAME>NvMNameOfFeeBlock</SHORT-NAME>
													<LONG-NAME>
														<L-4 L="EN">Name Of Fee Block</L-4>
													</LONG-NAME>
													<DESC>
														<L-2 L="EN">Reference to one block in the FEE configuration.</L-2>
													</DESC>
													<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
													<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
													<IMPLEMENTATION-CONFIG-CLASSES>
														<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
															<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
															<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
														</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
													</IMPLEMENTATION-CONFIG-CLASSES>
													<ORIGIN>AUTOSAR_ECUC</ORIGIN>
													<REQUIRES-INDEX>false</REQUIRES-INDEX>
													<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Fee/FeeBlockConfiguration</DESTINATION-REF>
												</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
											</REFERENCES>
										</ECUC-PARAM-CONF-CONTAINER-DEF>
									</CHOICES>
								</ECUC-CHOICE-CONTAINER-DEF>
							</SUB-CONTAINERS>
						</ECUC-PARAM-CONF-CONTAINER-DEF>
						<!-- Container Definition: NvMCommon -->
						<ECUC-PARAM-CONF-CONTAINER-DEF UUID="2894fda9-3f22-4fd7-ade9-accf0e2a2f0c">
							<SHORT-NAME>NvMCommon</SHORT-NAME>
							<DESC>
								<L-2 L="EN">This container includes the common configuration options.</L-2>
							</DESC>
							<ADMIN-DATA>
								<SDGS>
									<SDG GID="DV:CfgPostBuild">
										<SD GID="DV:postBuildSelectableChangeable">false</SD>
										<SD GID="DV:postBuildNotDeletable">false</SD>
									</SDG>
								</SDGS>
							</ADMIN-DATA>
							<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
							<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
							<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
							<MULTIPLE-CONFIGURATION-CONTAINER>false</MULTIPLE-CONFIGURATION-CONTAINER>
							<PARAMETERS>
								<!-- PARAMETER DEFINITION: NvMApiConfigClass -->
								<ECUC-ENUMERATION-PARAM-DEF UUID="f0c3cb7c-f642-43bf-998b-6da045440bd2">
									<SHORT-NAME>NvMApiConfigClass</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">API Configuration Class</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the API configuration class.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>NVM_API_CONFIG_CLASS_3</DEFAULT-VALUE>
									<LITERALS>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="290eec45-9219-4446-bd09-274137d6918a">
											<SHORT-NAME>NVM_API_CONFIG_CLASS_1</SHORT-NAME>
											<ORIGIN>AUTOSAR_ECUC</ORIGIN>
										</ECUC-ENUMERATION-LITERAL-DEF>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="e80d7e22-c1db-498b-a294-8ed998b89bcc">
											<SHORT-NAME>NVM_API_CONFIG_CLASS_2</SHORT-NAME>
											<ORIGIN>AUTOSAR_ECUC</ORIGIN>
										</ECUC-ENUMERATION-LITERAL-DEF>
										<ECUC-ENUMERATION-LITERAL-DEF UUID="7c668a7d-24cf-4dda-af2d-e4a40eaf732f">
											<SHORT-NAME>NVM_API_CONFIG_CLASS_3</SHORT-NAME>
											<ORIGIN>AUTOSAR_ECUC</ORIGIN>
										</ECUC-ENUMERATION-LITERAL-DEF>
									</LITERALS>
								</ECUC-ENUMERATION-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMBswMMultiBlockJobStatusInformation -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="7af9f52a-a61b-4467-b986-07f3bfb8d412">
									<SHORT-NAME>NvMBswMMultiBlockJobStatusInformation</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Multiblock Job Status Information</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines whether BswM is informed about the current status of the multi block job.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">True: call  BswM_NvM_CurrentJobMode if ReadAll and WriteAll are started, finished, canceled 
                                        False: do not inform BswM at all</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMCompiledConfigId -->
								<ECUC-INTEGER-PARAM-DEF UUID="5e988cc1-7991-44e6-b4b0-d73461717b5e">
									<SHORT-NAME>NvMCompiledConfigId</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Compiled Configuration Id</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the Configuration ID regarding the NV memory layout. This configuration ID shall be published as e.g. a SW-C shall have the possibility to write it to NV memory.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>65535</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMCrcNumOfBytes -->
								<ECUC-INTEGER-PARAM-DEF UUID="22d6157d-4f81-4026-b7f6-06cb01b0ac5f">
									<SHORT-NAME>NvMCrcNumOfBytes</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Crc Number of Bytes</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the maximum number of bytes which shall be processed within one single NvM_MainFunctionCall for CRC calculation as well as for internal copy operations.
Therefore this parameter has influence on maximum duration of NvM_MainFucntion, hence it also influences the setting of "Call Cycle of NvM_MainFunction" (NvMMainFunctionPeriod).
In general, smaller values of "Crc Number of Bytes" allow smaller (faster) call cycles, and vice versa.

Note that one NvM_MainFunction call may perform two CRC calculations of "Crc Number of Bytes". Additionally an internal copy operation (performed instead of a CRC calculation) processes more bytes (because copying step requires less CPU-instructions than CRC clacluation).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>64</DEFAULT-VALUE>
									<MAX>65535</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMDatasetSelectionBits -->
								<ECUC-INTEGER-PARAM-DEF UUID="86cd2843-36ce-4526-9857-805b1d779bb9">
									<SHORT-NAME>NvMDatasetSelectionBits</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Dataset Selection Bits</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the number of least significant bits which shall be used to address a certain dataset of a NVRAM block within the interface to the memory hardware abstraction.

0..8: Number of bits which are used for dataset or redundant block addressing. 

0: No dataset or redundant NVRAM blocks are configured at all, no selection bits required.

1: In case of redundant NVRAM blocks are configured, but no dataset NVRAM blocks.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">0..8: Number of bits which are used for dataset or redundant block addressing. 

                                        0: No dataset or redundant NVRAM blocks are configured at all, no selection bits required.

                                        1: In case of redundant NVRAM blocks are configured, but no dataset NVRAM blocks.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>4</DEFAULT-VALUE>
									<MAX>8</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMDevErrorDetect -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="e11b9c52-7782-4ad0-9028-ed59919645cb">
									<SHORT-NAME>NvMDevErrorDetect</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Development Error Detection</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter switches the Development Error Detection and Notification ON or OFF.
true:	Development error detection is enabled.
false:	Development error detection is disabled.

Note: In general, the development error detection is recommended during pre-test phase. It is not recommended to enable the development error detection in production code due to increased runtime and ROM needs.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Development error detection enabled.
                                        false:	Development error detection disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMDrvModeSwitch -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="cd267a07-7828-4d7d-b073-949ab7149f14">
									<SHORT-NAME>NvMDrvModeSwitch</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Drivers Mode Switch</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines switching memory drivers to fast mode during performing NvM_ReadAll and NvM_WriteAll.

true:	Fast mode enabled.
false:	Fast mode disabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Fast mode enabled.
                                        false:	Fast mode disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMDynamicConfiguration -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="70f68967-0598-4ea5-b078-e9c16d39eb23">
									<SHORT-NAME>NvMDynamicConfiguration</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Dynamic Configuration Handling</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines to enable the dynamic configuration management handling by the NvM_ReadAll request.

true:	Dynamic configuration management handling enabled.
false:	Dynamic configuration management handling disabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Dynamic configuration management handling enabled.
                                        false:	Dynamic configuration management handling disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMJobPrioritization -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="03ae6318-7545-46fc-a791-aa782f15e251">
									<SHORT-NAME>NvMJobPrioritization</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Job Prioritization</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if job prioritization handling is enabled.

true:	Job prioritization handling enabled.
false:	Job prioritization handling disabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Job prioritization handling enabled.
                                        false:	Job prioritization handling disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMMultiBlockCallback -->
								<ECUC-FUNCTION-NAME-DEF UUID="94ace87b-8501-458d-9f18-38e8cdc44511">
									<SHORT-NAME>NvMMultiBlockCallback</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Multi Block Callback</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the common callback routine which shall be invoked on termination of each asynchronous multi block request.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-FUNCTION-NAME-DEF-VARIANTS>
										<ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
											<DEFAULT-VALUE>NULL_PTR</DEFAULT-VALUE>
										</ECUC-FUNCTION-NAME-DEF-CONDITIONAL>
									</ECUC-FUNCTION-NAME-DEF-VARIANTS>
								</ECUC-FUNCTION-NAME-DEF>
								<!-- PARAMETER DEFINITION: NvMPollingMode -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="c04c489f-22e6-4539-b26f-e3e9224cb8e5">
									<SHORT-NAME>NvMPollingMode</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Polling Mode</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if the polling mode in the NVRAM Manager is enabled. At the same time the callback functions useable by lower layers is disabled.

true:	Polling mode enabled, callback function usage disabled.
false:	Polling mode disabled, callback function usage enabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Polling mode enabled, callback function usage disabled.
                                        false:	Polling mode disabled, callback function usage enabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMRepeatMirrorOperations -->
								<ECUC-INTEGER-PARAM-DEF UUID="3655913c-9a8b-44ca-81af-cd0f71d4c11f">
									<SHORT-NAME>NvMRepeatMirrorOperations</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Repeat Mirror Operations</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Not used!

This value specifies the number of retries to let the application copy data to or from the NvM module's mirror before postponing the current job.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>0</DEFAULT-VALUE>
									<MAX>7</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSetRamBlockStatusApi -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="b5875044-0d18-47fa-8f99-34a4ff032718">
									<SHORT-NAME>NvMSetRamBlockStatusApi</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">SetRamBlockStatus API</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if API NvM_SetRamBlockStatus is available.

true:	API NvM_SetRamBlockStatus enabled.
false:	API NvM_SetRamBlockStatus disabled.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	API NvM_SetRamBlockStatus enabled.
                                        false:	API NvM_SetRamBlockStatus disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSizeImmediateJobQueue -->
								<ECUC-INTEGER-PARAM-DEF UUID="9588e7a1-ae5c-4ab5-a86f-53841ae185fe">
									<SHORT-NAME>NvMSizeImmediateJobQueue</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Size Of Immediate Job Queue</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the number of queue entries for the immediate priority job queue. 
Hint: If (NvMJobPrioritization == false) this parameter is ignored.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>255</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMSizeStandardJobQueue -->
								<ECUC-INTEGER-PARAM-DEF UUID="71c5718f-4ba1-485f-bcc9-f8bf24ee0ed9">
									<SHORT-NAME>NvMSizeStandardJobQueue</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Size Of Standard Job Queue</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the number of queue entries for the standard job queue.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>8</DEFAULT-VALUE>
									<MAX>255</MAX>
									<MIN>1</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<!-- PARAMETER DEFINITION: NvMVersionInfoApi -->
								<ECUC-BOOLEAN-PARAM-DEF UUID="0bf8f78e-4056-41a4-9b6c-8d1b3d5c2249">
									<SHORT-NAME>NvMVersionInfoApi</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Version Information API</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter enables/disables the function NvM_GetVersionInfo() to get major, minor and patch version information.</L-2>
									</DESC>
									<INTRODUCTION>
										<P>
											<L-1 L="EN">true:	Version info API enabled.
                                        false:	Version info API disabled.</L-1>
										</P>
									</INTRODUCTION>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-INTEGER-PARAM-DEF UUID="9c374f04-0388-4e12-aecd-e588e0ffe096">
									<SHORT-NAME>NvMMaxNoOfWriteRetries</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Maximum Number of Write Retries</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This value specifies the maximum number of write retries for a NVRAM block. Regardless of configuration a consistency check and write retries are always forced for each block which is processed by the request NvM_WriteAll and NvM_WriteBlock.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>1</DEFAULT-VALUE>
									<MAX>7</MAX>
									<MIN>0</MIN>
								</ECUC-INTEGER-PARAM-DEF>
								<ECUC-FLOAT-PARAM-DEF UUID="66a9a283-142d-4df0-a335-cf08bf442fda">
									<SHORT-NAME>NvMMainFunctionPeriod</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Call Cycle of NvM_MainFunction</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Specify fixed call cycle for NvM_MainFunction.
This information affects RTE's (SchM's) settings.

NVM itself does not depend on a fixed cycle time; in can be triggered at arbitrary rates.

It is not necessary to rigger NVM faster than its lower layers (FEE/EA and FLS/EEP).
Also consider NvMCrcNumOf Bytes, which limits the maximim MainFunction processing times during CRC Calculation as well as internal copie operations.
The faster you want NvM_MainFunction being triggered, the smaller this value should be and vice versa.

Note, that notifcation functions may arbitrarily extend NvM_MainFunction's maximum duration. This is an issue especially for init callbacks as well as for explicit synchronization callbacks, as they would have to process a block at once.</L-2>
									</DESC>
									<ADMIN-DATA>
										<SDGS>
											<SDG GID="DV:Display">
												<SD GID="DV:BaseUnit">SEC</SD>
												<SD GID="DV:Unit">MSEC</SD>
											</SDG>
											<SDG GID="DV:CfgPostBuild">
												<SD GID="DV:variantMultiplicityPBL">false</SD>
											</SDG>
										</SDGS>
									</ADMIN-DATA>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>0.01</DEFAULT-VALUE>
									<MAX>1</MAX>
									<MIN>0.001</MIN>
								</ECUC-FLOAT-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="f3c2baf6-24e5-4334-a3f5-ce8f6f24fad2">
									<SHORT-NAME>NvMUseBlockIdCheck</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Use Block Id Check for Blocks with Crc</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">If enabled, the NvM checks the data, delivered via underlying modules, to belong to the requested NvM Block. Since the NvM uses the Crc, this is only working for Blocks configured with Crc! If there is no Block with Crc, this feature will remain unused!</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="a1712d18-7659-43d2-b25f-c9551d023706">
									<SHORT-NAME>NvMRepairRedundantBlocksApi</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Repair Redundant Blocks Api</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Enables the NvM background job "Repair Redundant Blocks", which iterates over all configured redundant blocks and checks their redundancy within the NV RAM. If the redundancy is lost, the job will try to repair it.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="c737baba-9e85-4955-8f89-f16146e8d292">
									<SHORT-NAME>NvMSafeBswChecks</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Safe BSW Checks</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">Selects if safety checks are used. These checks improve robustness as e.g. invalid parameters are checked before function is executed. This attribute has to be enabled for safety projects where this component is mapped to an ASIL partition.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>false</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
							</PARAMETERS>
						</ECUC-PARAM-CONF-CONTAINER-DEF>
						<!-- Container Definition: NvmDemEventParameterRefs -->
						<ECUC-PARAM-CONF-CONTAINER-DEF UUID="c3c85427-17aa-4b66-9867-8b1214208bcf">
							<SHORT-NAME>NvmDemEventParameterRefs</SHORT-NAME>
							<DESC>
								<L-2 L="EN">This container includes references to DemEventParameter elements which shall be invoked using the API Dem_ReportErrorStatus API in case the corresponding error occurs. The EventId is taken from the referenced DemEventParameter's DemEventId value.</L-2>
							</DESC>
							<ADMIN-DATA>
								<SDGS>
									<SDG GID="DV:CfgPostBuild">
										<SD GID="DV:postBuildSelectableChangeable">false</SD>
										<SD GID="DV:postBuildNotDeletable">false</SD>
									</SDG>
								</SDGS>
							</ADMIN-DATA>
							<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
							<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
							<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
							<MULTIPLE-CONFIGURATION-CONTAINER>false</MULTIPLE-CONFIGURATION-CONTAINER>
							<REFERENCES>
								<!-- Symbolic Name Reference Definition: NVM_E_INTEGRITY_FAILED -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="16a4f93a-0e8f-436c-807c-34f045fb3d50">
									<SHORT-NAME>NVM_E_INTEGRITY_FAILED</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Reference to the DemEventParameter which shall be issued when the error "API request integrity failed" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_LOSS_OF_REDUNDANCY -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="4ad736f4-1af8-418c-9236-d5fb3dc77d1d">
									<SHORT-NAME>NVM_E_LOSS_OF_REDUNDANCY</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Reference to the DemEventParameter which shall be issued when the error "loss of redundancy" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_QUEUE_OVERFLOW -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="0ce49b53-f609-49a9-a5be-c92f20913efe">
									<SHORT-NAME>NVM_E_QUEUE_OVERFLOW</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Reference to the DemEventParameter which shall be issued when the error "NVRAM Managers job queue overflow" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_REQ_FAILED -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="ec3ef25b-44bb-497f-a228-2625def2f02e">
									<SHORT-NAME>NVM_E_REQ_FAILED</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Reference to the DemEventParameter which shall be issued when the error "API request failed" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_VERIFY_FAILED -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="852bbda8-0dcf-43a3-bc71-bde6d9de7e50">
									<SHORT-NAME>NVM_E_VERIFY_FAILED</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Not used!

Reference to the DemEventParameter which shall be issued when the error "Write Verification failed" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_WRITE_PROTECTED -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="2e229ac1-7dff-4eab-9511-f7878e8fbfad">
									<SHORT-NAME>NVM_E_WRITE_PROTECTED</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Reference to the DemEventParameter which shall be issued when the error "write attempt to NVRAM block with write protection" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
								<!-- Symbolic Name Reference Definition: NVM_E_WRONG_BLOCK_ID -->
								<ECUC-SYMBOLIC-NAME-REFERENCE-DEF UUID="9d8dba43-a9b2-4f64-b35a-925feb8a7268">
									<SHORT-NAME>NVM_E_WRONG_BLOCK_ID</SHORT-NAME>
									<DESC>
										<L-2 L="EN">Not used!

Reference to the DemEventParameter which shall be issued when the error "Static Block ID check failed" has occurred.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>AUTOSAR_ECUC</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<DESTINATION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/AUTOSAR/EcucDefs/Dem/DemConfigSet/DemEventParameter</DESTINATION-REF>
								</ECUC-SYMBOLIC-NAME-REFERENCE-DEF>
							</REFERENCES>
						</ECUC-PARAM-CONF-CONTAINER-DEF>
						<ECUC-PARAM-CONF-CONTAINER-DEF UUID="77c7c79a-877f-4075-8933-b6c58c461999">
							<SHORT-NAME>NvMCommonVendorParams</SHORT-NAME>
							<LONG-NAME>
								<L-4 L="EN">Common Vendor Parameter</L-4>
							</LONG-NAME>
							<DESC>
								<L-2 L="EN">This container includes Vector specific Module Configuration Parameters.</L-2>
							</DESC>
							<ADMIN-DATA>
								<SDGS>
									<SDG GID="DV:CfgPostBuild">
										<SD GID="DV:postBuildSelectableChangeable">false</SD>
										<SD GID="DV:postBuildNotDeletable">false</SD>
									</SDG>
								</SDGS>
							</ADMIN-DATA>
							<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
							<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
							<POST-BUILD-CHANGEABLE>false</POST-BUILD-CHANGEABLE>
							<PARAMETERS>
								<ECUC-STRING-PARAM-DEF UUID="d2f54c4d-f49e-4c07-b56d-c855ec95b06a">
									<SHORT-NAME>NvMCfgCbkIncludeList</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Callback Include File List</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter contains the header file(s) declaring the call back functions, and the blocks' symbol declarations, i.e. the multi block callback the single block call backs, the block init callbacks, the ram block symbols as well as the rom block symbols.</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>0</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY-INFINITE>true</UPPER-MULTIPLICITY-INFINITE>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-STRING-PARAM-DEF-VARIANTS>
										<ECUC-STRING-PARAM-DEF-CONDITIONAL>
											<DEFAULT-VALUE>Application.h</DEFAULT-VALUE>
										</ECUC-STRING-PARAM-DEF-CONDITIONAL>
									</ECUC-STRING-PARAM-DEF-VARIANTS>
								</ECUC-STRING-PARAM-DEF>
								<ECUC-STRING-PARAM-DEF UUID="812ca974-52c1-4800-a2f4-138c2784b656">
									<SHORT-NAME>NvMMultiblockId</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Multiblock Id</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines the symbolic name of the multi block ID (Block Id 0).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<ECUC-STRING-PARAM-DEF-VARIANTS>
										<ECUC-STRING-PARAM-DEF-CONDITIONAL>
											<DEFAULT-VALUE>MultiBlockRequest</DEFAULT-VALUE>
										</ECUC-STRING-PARAM-DEF-CONDITIONAL>
									</ECUC-STRING-PARAM-DEF-VARIANTS>
								</ECUC-STRING-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="6df43e2d-0a84-44f6-84f7-c1b2ca464211">
									<SHORT-NAME>NvMCrcIntBuffer</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Crc Internal Buffer</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This paremter defines if the CRC Buffer is module internally. 
true: The NVM provides the buffer for the CRC value internally. Memory for CRC must not be allocated at the end of Ram Block variable. 
false: The NVM does not provide the buffer for the CRC value.. Memory for CRC at the end of Ram Block variable is necessary!</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
								<ECUC-BOOLEAN-PARAM-DEF UUID="3af5cbf8-36fe-4f90-a849-0cf4334274c6">
									<SHORT-NAME>NvMKillWriteAllApi</SHORT-NAME>
									<LONG-NAME>
										<L-4 L="EN">Kill WriteAll API</L-4>
									</LONG-NAME>
									<DESC>
										<L-2 L="EN">This parameter defines if the API NvM_KillWriteAll  is available. The API gives users (i.e. EcuM) the possibility to time-out WriteAll cancellation (NvM_CancelWriteAll).</L-2>
									</DESC>
									<LOWER-MULTIPLICITY>1</LOWER-MULTIPLICITY>
									<UPPER-MULTIPLICITY>1</UPPER-MULTIPLICITY>
									<IMPLEMENTATION-CONFIG-CLASSES>
										<ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
											<CONFIG-CLASS>PRE-COMPILE</CONFIG-CLASS>
											<CONFIG-VARIANT>VARIANT-PRE-COMPILE</CONFIG-VARIANT>
										</ECUC-IMPLEMENTATION-CONFIGURATION-CLASS>
									</IMPLEMENTATION-CONFIG-CLASSES>
									<ORIGIN>Vector Informatik</ORIGIN>
									<REQUIRES-INDEX>false</REQUIRES-INDEX>
									<SYMBOLIC-NAME-VALUE>false</SYMBOLIC-NAME-VALUE>
									<DEFAULT-VALUE>true</DEFAULT-VALUE>
								</ECUC-BOOLEAN-PARAM-DEF>
							</PARAMETERS>
						</ECUC-PARAM-CONF-CONTAINER-DEF>
					</CONTAINERS>
				</ECUC-MODULE-DEF>
				<ECUC-MODULE-CONFIGURATION-VALUES UUID="2e0c6c41-59eb-4ed0-8099-d419c7f1bfde">
					<SHORT-NAME>NvM_Pre</SHORT-NAME>
					<DEFINITION-REF DEST="ECUC-MODULE-DEF">/MICROSAR/NvM</DEFINITION-REF>
					<CONTAINERS>
						<ECUC-CONTAINER-VALUE UUID="341aed1e-8b7b-46ab-b095-cbe410d5f771">
							<SHORT-NAME>NvMConfigBlock</SHORT-NAME>
							<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/MICROSAR/NvM/NvMBlockDescriptor</DEFINITION-REF>
							<PARAMETER-VALUES>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMNvramBlockIdentifier</DEFINITION-REF>
									<VALUE>1</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-TEXTUAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMBlockManagementType</DEFINITION-REF>
									<VALUE>NVM_BLOCK_REDUNDANT</VALUE>
								</ECUC-TEXTUAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMNvBlockNum</DEFINITION-REF>
									<VALUE>2</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMBlockUseCrc</DEFINITION-REF>
									<VALUE>1</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-INTEGER-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMNvBlockLength</DEFINITION-REF>
									<VALUE>2</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMSelectBlockForReadAll</DEFINITION-REF>
									<VALUE>1</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMResistantToChangedSw</DEFINITION-REF>
									<VALUE>1</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMUseInitCallback</DEFINITION-REF>
									<VALUE>0</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMSelectBlockForWriteAll</DEFINITION-REF>
									<VALUE>1</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-NUMERICAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-BOOLEAN-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMCalcRamBlockCrc</DEFINITION-REF>
									<VALUE>0</VALUE>
								</ECUC-NUMERICAL-PARAM-VALUE>
								<ECUC-TEXTUAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-STRING-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMRomBlockDataAddress</DEFINITION-REF>
									<VALUE>NULL_PTR</VALUE>
								</ECUC-TEXTUAL-PARAM-VALUE>
							</PARAMETER-VALUES>
						</ECUC-CONTAINER-VALUE>
					</CONTAINERS>
				</ECUC-MODULE-CONFIGURATION-VALUES>
				<ECUC-MODULE-CONFIGURATION-VALUES UUID="ccc539ec-d697-4edb-9caf-0ae9f017e941">
					<SHORT-NAME>NvM_Rec</SHORT-NAME>
					<DEFINITION-REF DEST="ECUC-MODULE-DEF">/MICROSAR/NvM</DEFINITION-REF>
					<CONTAINERS>
						<ECUC-CONTAINER-VALUE UUID="8787c43b-0220-496b-bbaa-c9fba45f8984">
							<SHORT-NAME>NvMConfigBlock</SHORT-NAME>
							<DEFINITION-REF DEST="ECUC-PARAM-CONF-CONTAINER-DEF">/MICROSAR/NvM/NvMBlockDescriptor</DEFINITION-REF>
							<PARAMETER-VALUES>
								<ECUC-TEXTUAL-PARAM-VALUE>
									<DEFINITION-REF DEST="ECUC-ENUMERATION-PARAM-DEF">/MICROSAR/NvM/NvMBlockDescriptor/NvMBlockCrcType</DEFINITION-REF>
									<VALUE>NVM_CRC16</VALUE>
								</ECUC-TEXTUAL-PARAM-VALUE>
							</PARAMETER-VALUES>
						</ECUC-CONTAINER-VALUE>
					</CONTAINERS>
				</ECUC-MODULE-CONFIGURATION-VALUES>
				<BSW-IMPLEMENTATION UUID="8cbb61b5-1e82-4754-827d-46a0b8b7e599">
					<SHORT-NAME>NvM_Impl</SHORT-NAME>
					<PROGRAMMING-LANGUAGE>C</PROGRAMMING-LANGUAGE>
					<SW-VERSION>5.07.01</SW-VERSION>
					<USED-CODE-GENERATOR>DaVinci Configurator</USED-CODE-GENERATOR>
					<VENDOR-ID>30</VENDOR-ID>
					<AR-RELEASE-VERSION>4.00.03</AR-RELEASE-VERSION>
					<BEHAVIOR-REF DEST="BSW-INTERNAL-BEHAVIOR">/MICROSAR/NvM_ib_bswmd/BswModuleDescriptions/NvM/NvMBehavior</BEHAVIOR-REF>
					<PRECONFIGURED-CONFIGURATION-REFS>
						<PRECONFIGURED-CONFIGURATION-REF DEST="ECUC-MODULE-CONFIGURATION-VALUES">/MICROSAR/NvM_Pre</PRECONFIGURED-CONFIGURATION-REF>
					</PRECONFIGURED-CONFIGURATION-REFS>
					<RECOMMENDED-CONFIGURATION-REFS>
						<RECOMMENDED-CONFIGURATION-REF DEST="ECUC-MODULE-CONFIGURATION-VALUES">/MICROSAR/NvM_Rec</RECOMMENDED-CONFIGURATION-REF>
					</RECOMMENDED-CONFIGURATION-REFS>
					<VENDOR-SPECIFIC-MODULE-DEF-REFS>
						<VENDOR-SPECIFIC-MODULE-DEF-REF DEST="ECUC-MODULE-DEF">/MICROSAR/NvM</VENDOR-SPECIFIC-MODULE-DEF-REF>
					</VENDOR-SPECIFIC-MODULE-DEF-REFS>
				</BSW-IMPLEMENTATION>
			</ELEMENTS>
		</AR-PACKAGE>
	</AR-PACKAGES>
</AUTOSAR>